#ifndef  __CLOCK_8010SJ_H
#define  __CLOCK_8010SJ_H



#include "delay.h"
#include "gpio.h"


#define RTC8010_SDA        GPIO_PTA2
#define RTC8010_SDA_HIGH   PTA2_OUT_HIGH
#define RTC8010_SDA_LOW    PTA2_OUT_LOW
#define RTC8010_SDA_IN     PTA2_IN

#define RTC8010_SCL        GPIO_PTA3
#define RTC8010_SCL_HIGH   PTA3_OUT_HIGH
#define RTC8010_SCL_LOW    PTA3_OUT_LOW



#define RX8010_SEC     0x10
#define RX8010_MIN     0x11
#define RX8010_HOUR    0x12

#define RX8010_MDAY    0x14
#define RX8010_MONTH   0x15
#define RX8010_YEAR    0x16


#define  RX8010_TIME_BAK     0x20
//这里存储的是最后掉电时间   0x20 ---sec
//                           0x21 ---min
//                           0x22 ---hour
//                           0x23 ---days
//                           0x24 ---month
//                           0x25 ---year
/* 0x20 to 0x2F are user registers */

#ifdef RTC_RX8010SJ

void I2C8010_start(void) ;
void I2C8010_stop(void) ;
/////*************************************************** //
//** 函数原型: bit IC_writebyte(uchar wdata);       ** //
//** 功    能: 向 IC 总线发送 8 位数据,并请求一个应答信 ** //
//**           号 ACK.如果收到 ACK 应答则返回 1(TRUE),  ** //
//**           否则返回 0(FALSE).                    ** //
//***************************************************/ 
unsigned char I2C8010_WriteByte( unsigned char wdata); 


/////*********************************************** //
//** 函数原型: uchar IC_readbyte(void);         ** //
//** 功    能: 从 IC 总线上接收 8 位数据,并将接受到 ** //
//**           8 位数据作为一个字节返回,不回送应 ** //
//**           答信号 ACK.                       ** //
//***********************************************/
 unsigned char I2C8010_ReadByte(void) ;


/////*************************************************************** //
//** 函数原型: bit readEEone(uchar instr,uchar addr,uchar num); ** //
//** 功    能: 从 8010 中读取 num 个字节的数据,采用序列读操作方  ** //
//**           式从片内 Address 地址开始连续读取数据.8010 不接  ** //
//**           受指定的地址则返回 0(FALSE).                      ** //
//***************************************************************/ 
extern unsigned char lg8010ReadEEone(unsigned char addr,unsigned char num) ;


/****************************************************************
* 函数原型: bit writeEEone(uchar instr,uchar addr,uchar data); 
* 功    能:  写数字data 到 addr     
***************************************************************/
extern  unsigned char lg8010WriteEEone(unsigned char addr,unsigned char data);

//时钟串口输入

void  timbakrd(unsigned char *yhmhtim);
void lgSetTime();
unsigned char   lgTimeRead();
void lgInitRTC();
void lgUpdateTime();

//unsigned char TimeRead(unsigned char *yhmhtim);

void   TimeWrite(unsigned char *yhmhtim);

void   clockupdate(unsigned char *yhmhtim);
#endif


#endif
